
using UnityEngine;
using System;
/// <summary>
/// 模拟行为接口
/// </summary>
public interface ISimulateBehaviour
{
	/// <summary>
    /// 模拟行为GlobalId
    /// </summary>
    long simulateGlobalId { get; }
	/// <summary>
    /// 绑定组件的GameObjectId
    /// </summary>
    int bindGameObjectInstanceId { get; }
	/// <summary>
    /// 绑定GameObject
    /// </summary>
    /// <param name="_go">GameObject</param>
    void BindGameObject(GameObject _go);
	/// <summary>
    /// 解绑GameObject
    /// </summary>
    void UnBindGameObject();
	#region Awake
	/// <summary>
	/// Awake
	/// </summary>
	void Awake ();
	#endregion
	#region Start
	/// <summary>
	/// Start
	/// </summary>
	void Start ();
	#endregion
	#region Update
	/// <summary>
	/// Update
	/// </summary>
	void Update ();
	#endregion
	#region FixedUpdate
	/// <summary>
	/// FixedUpdate
	/// </summary>
	void FixedUpdate ();
	#endregion
	#region LateUpdate
	/// <summary>
	/// LateUpdate
	/// </summary>
	void LateUpdate ();
	#endregion
	#region OnAnimatorIK
	/// <summary>
	/// OnAnimatorIK
	/// </summary>
	/// <param name="_layerIndex">Int32</param>
	void OnAnimatorIK (Int32 _layerIndex);
	#endregion
	#region OnAnimatorMove
	/// <summary>
	/// OnAnimatorMove
	/// </summary>
	void OnAnimatorMove ();
	#endregion
	#region OnApplicationFocus
	/// <summary>
	/// OnApplicationFocus
	/// </summary>
	/// <param name="_focus">Boolean</param>
	void OnApplicationFocus (Boolean _focus);
	#endregion
	#region OnApplicationQuit
	/// <summary>
	/// OnApplicationQuit
	/// </summary>
	void OnApplicationQuit ();
	#endregion
	#region OnApplicationPause
	/// <summary>
	/// OnApplicationPause
	/// </summary>
	/// <param name="_pause">Boolean</param>
	void OnApplicationPause (Boolean _pause);
	#endregion
	#region OnAudioFilterRead
	/// <summary>
	/// OnAudioFilterRead
	/// </summary>
	/// <param name="_data">Single[]</param>
/// <param name="_channels">Int32</param>
	void OnAudioFilterRead (Single[] _data,Int32 _channels);
	#endregion
	#region OnBecameInvisible
	/// <summary>
	/// OnBecameInvisible
	/// </summary>
	void OnBecameInvisible ();
	#endregion
	#region OnBecameVisible
	/// <summary>
	/// OnBecameVisible
	/// </summary>
	void OnBecameVisible ();
	#endregion
	#region OnBeforeTransformParentChanged
	/// <summary>
	/// OnBeforeTransformParentChanged
	/// </summary>
	void OnBeforeTransformParentChanged ();
	#endregion
	#region OnCanvasGroupChanged
	/// <summary>
	/// OnCanvasGroupChanged
	/// </summary>
	void OnCanvasGroupChanged ();
	#endregion
	#region OnCollisionEnter
	/// <summary>
	/// OnCollisionEnter
	/// </summary>
	/// <param name="_collision">Collision</param>
	void OnCollisionEnter (Collision _collision);
	#endregion
	#region OnCollisionEnter2D
	/// <summary>
	/// OnCollisionEnter2D
	/// </summary>
	/// <param name="_collision">Collision2D</param>
	void OnCollisionEnter2D (Collision2D _collision);
	#endregion
	#region OnCollisionExit
	/// <summary>
	/// OnCollisionExit
	/// </summary>
	/// <param name="_collision">Collision</param>
	void OnCollisionExit (Collision _collision);
	#endregion
	#region OnCollisionExit2D
	/// <summary>
	/// OnCollisionExit2D
	/// </summary>
	/// <param name="_collision">Collision2D</param>
	void OnCollisionExit2D (Collision2D _collision);
	#endregion
	#region OnCollisionStay
	/// <summary>
	/// OnCollisionStay
	/// </summary>
	/// <param name="_collision">Collision</param>
	void OnCollisionStay (Collision _collision);
	#endregion
	#region OnCollisionStay2D
	/// <summary>
	/// OnCollisionStay2D
	/// </summary>
	/// <param name="_collision">Collision2D</param>
	void OnCollisionStay2D (Collision2D _collision);
	#endregion
	#region OnConnectedToServer
	/// <summary>
	/// OnConnectedToServer
	/// </summary>
	void OnConnectedToServer ();
	#endregion
	#region OnControllerColliderHit
	/// <summary>
	/// OnControllerColliderHit
	/// </summary>
	/// <param name="_hit">ControllerColliderHit</param>
	void OnControllerColliderHit (ControllerColliderHit _hit);
	#endregion
	#region OnDestroy
	/// <summary>
	/// OnDestroy
	/// </summary>
	void OnDestroy ();
	#endregion
	#region OnDisable
	/// <summary>
	/// OnDisable
	/// </summary>
	void OnDisable ();
	#endregion
	#region OnDrawGizmos
	/// <summary>
	/// OnDrawGizmos
	/// </summary>
	void OnDrawGizmos ();
	#endregion
	#region OnDrawGizmosSelected
	/// <summary>
	/// OnDrawGizmosSelected
	/// </summary>
	void OnDrawGizmosSelected ();
	#endregion
	#region OnEnable
	/// <summary>
	/// OnEnable
	/// </summary>
	void OnEnable ();
	#endregion
	#region OnGUI
	/// <summary>
	/// OnGUI
	/// </summary>
	void OnGUI ();
	#endregion
	#region OnJointBreak
	/// <summary>
	/// OnJointBreak
	/// </summary>
	/// <param name="_breakForce">Single</param>
	void OnJointBreak (Single _breakForce);
	#endregion
	#region OnJointBreak2D
	/// <summary>
	/// OnJointBreak2D
	/// </summary>
	/// <param name="_joint">Joint2D</param>
	void OnJointBreak2D (Joint2D _joint);
	#endregion
	#region OnLevelWasLoaded
	/// <summary>
	/// OnLevelWasLoaded
	/// </summary>
	/// <param name="_level">Int32</param>
	void OnLevelWasLoaded (Int32 _level);
	#endregion
	#region OnMouseDown
	/// <summary>
	/// OnMouseDown
	/// </summary>
	void OnMouseDown ();
	#endregion
	#region OnMouseDrag
	/// <summary>
	/// OnMouseDrag
	/// </summary>
	void OnMouseDrag ();
	#endregion
	#region OnMouseEnter
	/// <summary>
	/// OnMouseEnter
	/// </summary>
	void OnMouseEnter ();
	#endregion
	#region OnMouseExit
	/// <summary>
	/// OnMouseExit
	/// </summary>
	void OnMouseExit ();
	#endregion
	#region OnMouseOver
	/// <summary>
	/// OnMouseOver
	/// </summary>
	void OnMouseOver ();
	#endregion
	#region OnMouseUp
	/// <summary>
	/// OnMouseUp
	/// </summary>
	void OnMouseUp ();
	#endregion
	#region OnMouseUpAsButton
	/// <summary>
	/// OnMouseUpAsButton
	/// </summary>
	void OnMouseUpAsButton ();
	#endregion
	#region OnParticleCollision
	/// <summary>
	/// OnParticleCollision
	/// </summary>
	/// <param name="_other">GameObject</param>
	void OnParticleCollision (GameObject _other);
	#endregion
	#region OnParticleTrigger
	/// <summary>
	/// OnParticleTrigger
	/// </summary>
	void OnParticleTrigger ();
	#endregion
	#region OnPostRender
	/// <summary>
	/// OnPostRender
	/// </summary>
	void OnPostRender ();
	#endregion
	#region OnPreCull
	/// <summary>
	/// OnPreCull
	/// </summary>
	void OnPreCull ();
	#endregion
	#region OnPreRender
	/// <summary>
	/// OnPreRender
	/// </summary>
	void OnPreRender ();
	#endregion
	#region OnRectTransformDimensionsChange
	/// <summary>
	/// OnRectTransformDimensionsChange
	/// </summary>
	void OnRectTransformDimensionsChange ();
	#endregion
	#region OnRectTransformRemoved
	/// <summary>
	/// OnRectTransformRemoved
	/// </summary>
	void OnRectTransformRemoved ();
	#endregion
	#region OnRenderImage
	/// <summary>
	/// OnRenderImage
	/// </summary>
	/// <param name="_source">RenderTexture</param>
/// <param name="_destination">RenderTexture</param>
	void OnRenderImage (RenderTexture _source,RenderTexture _destination);
	#endregion
	#region OnRenderObject
	/// <summary>
	/// OnRenderObject
	/// </summary>
	void OnRenderObject ();
	#endregion
	#region OnServerInitialized
	/// <summary>
	/// OnServerInitialized
	/// </summary>
	void OnServerInitialized ();
	#endregion
	#region OnTransformChildrenChanged
	/// <summary>
	/// OnTransformChildrenChanged
	/// </summary>
	void OnTransformChildrenChanged ();
	#endregion
	#region OnTransformParentChanged
	/// <summary>
	/// OnTransformParentChanged
	/// </summary>
	void OnTransformParentChanged ();
	#endregion
	#region OnTriggerEnter
	/// <summary>
	/// OnTriggerEnter
	/// </summary>
	/// <param name="_other">Collider</param>
	void OnTriggerEnter (Collider _other);
	#endregion
	#region OnTriggerEnter2D
	/// <summary>
	/// OnTriggerEnter2D
	/// </summary>
	/// <param name="_collision">Collider2D</param>
	void OnTriggerEnter2D (Collider2D _collision);
	#endregion
	#region OnTriggerExit
	/// <summary>
	/// OnTriggerExit
	/// </summary>
	/// <param name="_other">Collider</param>
	void OnTriggerExit (Collider _other);
	#endregion
	#region OnTriggerExit2D
	/// <summary>
	/// OnTriggerExit2D
	/// </summary>
	/// <param name="_collision">Collider2D</param>
	void OnTriggerExit2D (Collider2D _collision);
	#endregion
	#region OnTriggerStay
	/// <summary>
	/// OnTriggerStay
	/// </summary>
	/// <param name="_other">Collider</param>
	void OnTriggerStay (Collider _other);
	#endregion
	#region OnTriggerStay2D
	/// <summary>
	/// OnTriggerStay2D
	/// </summary>
	/// <param name="_collision">Collider2D</param>
	void OnTriggerStay2D (Collider2D _collision);
	#endregion
	#region OnValidate
	/// <summary>
	/// OnValidate
	/// </summary>
	void OnValidate ();
	#endregion
	#region OnWillRenderObject
	/// <summary>
	/// OnWillRenderObject
	/// </summary>
	void OnWillRenderObject ();
	#endregion
	#region OnCanvasHierarchyChanged
	/// <summary>
	/// OnCanvasHierarchyChanged
	/// </summary>
	void OnCanvasHierarchyChanged ();
	#endregion
	#region OnDidApplyAnimationProperties
	/// <summary>
	/// OnDidApplyAnimationProperties
	/// </summary>
	void OnDidApplyAnimationProperties ();
	#endregion
}
